From: Wei Liu Date: Wed, 20 Jul 2016 14:13:41 +0000 (+0100) Subject: xenstore: send error earlier in do_mkdir X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~717 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/success/%22http:/www.example.com/cgi/success?a=commitdiff_plain;h=7d87d31d33ff7c746290886978d172dcab74369d;p=xen.git xenstore: send error earlier in do_mkdir XenServer's coverity instance complains that a few lines below create_node dereferences NULL if name == NULL. It however fails to figure out that if node is NULL, errno won't be ENOENT, so do_mkdir should have bailed before create_node. That said, it would be good if we don't need to go through the hops. We can bail earlier if name is NULL. Signed-off-by: Wei Liu Acked-by: Ian Jackson --- diff --git a/tools/xenstore/xenstored_core.c b/tools/xenstore/xenstored_core.c index ffc0634bf7..5b2a49bd84 100644 --- a/tools/xenstore/xenstored_core.c +++ b/tools/xenstore/xenstored_core.c @@ -981,6 +981,12 @@ static void do_mkdir(struct connection *conn, struct buffered_data *in) struct node *node; const char *name = onearg(in); + if (!name) { + errno = EINVAL; + send_error(conn, errno); + return; + } + name = canonicalize(conn, name); node = get_node(conn, in, name, XS_PERM_WRITE);